package com.lswms.modules.lswms.dao.check;

import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Options;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.mapping.StatementType;

import com.lswms.common.dao.BaseDao;
import com.lswms.modules.lswms.dto.check.CheckDTO;
import com.lswms.modules.lswms.entity.check.CheckEntity;

/**
 * 盘点
 *
 * @author DX sunlightcs@gmail.com
 * @since 1.0.0 2021-07-08
 */
@Mapper
public interface CheckDao extends BaseDao<CheckEntity> {

	@Select("{call dbo.PROC_LSWMS_CREATECHECK (#{checkkey,jdbcType=NVARCHAR,mode=IN},#{user,jdbcType=NVARCHAR,mode=IN},#{O_ERROR_CODE,jdbcType=VARCHAR,mode=OUT},#{O_ERROR_DESC,jdbcType=VARCHAR,mode=OUT})}")
    @Options(statementType = StatementType.CALLABLE)
	String createcheck( Map<String, Object> map);

	@Select("{call dbo.PROC_LSWMS_CREATECHECKTASK (#{checkkey,jdbcType=NVARCHAR,mode=IN},#{user,jdbcType=NVARCHAR,mode=IN},#{O_ERROR_CODE,jdbcType=VARCHAR,mode=OUT},#{O_ERROR_DESC,jdbcType=VARCHAR,mode=OUT})}")
    @Options(statementType = StatementType.CALLABLE)
	void createcheckTask(Map<String, Object> map);

	@Select("{call dbo.PROC_LSWMS_CHECK_POST (#{checkkey,jdbcType=NVARCHAR,mode=IN},#{user,jdbcType=NVARCHAR,mode=IN},#{O_ERROR_CODE,jdbcType=VARCHAR,mode=OUT},#{O_ERROR_DESC,jdbcType=VARCHAR,mode=OUT})}")
    @Options(statementType = StatementType.CALLABLE)
	void checkPost(Map<String, Object> map);
	
}